<!-- 商品页面的list -->
<template>
  <div class="container">
    <!-- 切换 -->
    <div :class="flag ? 'list-wrap' : 'list-wrap-vertical'">
      <ul>
        <li
          v-for="goodslistdata in goodslistdatas"
          :key="goodslistdata.goods_id"
        >
          <img :src="goodslistdata.goods_img" alt="" />
          <!-- 商品内容 -->
          <div class="goods-content">
            <div class="title">{{ goodslistdata.goods_name }}</div>
            <div class="current_price">
              <span
                ><em>￥</em>
                <span>{{ goodslistdata.shop_price | setInt }}</span>
                <em>{{ goodslistdata.shop_price | setFloat }}</em>
              </span>
            </div>
            <!-- 自营 -->
            <div class="self">
              <em>自营</em>
            </div>
            <div class="buy-info">
              <span>3人已购买</span>
              <div class="add_cart">
                <i class="iconfont icon-gouwuchekong"></i>
              </div>
            </div>
          </div>
        </li>
      </ul>
    </div>
  </div>
</template>

<script>
//这里可以导入其他文件（比如：组件，工具js，第三方插件js，json文件，图片文件等等）
//例如：import 《组件名称》 from '《组件路径》';

export default {
  //import引入的组件需要注入到对象中才能使用
  components: {},
  data() {
    //这里存放数据
    return {};
  },
  //监听属性 类似于data概念
  computed: {},
  props: ["goodslistdatas", "flag"],
  //监控data中的数据变化
  watch: {},
  //方法集合
  methods: {},
  beforeCreate() {}, //生命周期 - 创建之前
  //生命周期 - 创建完成（可以访问当前this实例）
  created() {},
  beforeMount() {}, //生命周期 - 挂载之前
  //生命周期 - 挂载完成（可以访问DOM元素）
  mounted() {
    console.log(this.goodslistdatas);
  },
  beforeUpdate() {}, //生命周期 - 更新之前
  updated() {}, //生命周期 - 更新之后
  beforeDestroy() {}, //生命周期 - 销毁之前
  destroyed() {}, //生命周期 - 销毁完成
  activated() {}, //如果页面有keep-alive缓存功能，这个函数会触发
};
</script>
<style lang="less">
.container {
  .list-wrap {
    ul {
      display: flex;
      flex-wrap: wrap;
      margin-top: 0.5rem;
      li {
        width: calc(50% - 1rem);
        height: 31.3rem;
        border-radius: 1rem;
        background-color: #fff;
        box-sizing: border-box;
        margin: 0.5rem;
        img {
          width: 17.8rem;
          height: 17.8rem;
        }
        .goods-content {
          padding: 0 1rem;
          .title {
            font-size: 1.4rem;
            line-height: 1.9rem;
            //   多行文本省略号
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            overflow: hidden;
          }
        }
        .current_price {
          margin-top: 0.5rem;
          color: #f92028;
          font-weight: 700;
          span {
            font-size: 1.5rem;
            em {
              font-size: 1.05rem;
            }
          }
        }
        .self {
          margin: 1rem 0;
          em {
            padding: 0 0.5rem;
            background-color: #f92028;
            color: #fff;
            height: 1.6rem;
            line-height: 1.6rem;
            border-radius: 0.3rem;
          }
        }
        .buy-info {
          display: flex;
          justify-content: space-between;
          span {
            color: #666;
          }
          .add_cart {
            color: #f92028;
          }
        }
      }
    }
  }
  .list-wrap-vertical {
    ul {
      display: flex;
      flex-wrap: wrap;
      margin-top: 0.5rem;
      li {
        width: calc(100% - 2rem);
        height: 13.3rem;
        border-radius: 1rem;
        background-color: #fff;
        margin: 1rem;
        display: flex;
        padding: 0.8rem;
        img {
          width: 9rem;
          height: 9rem;
        }
        .goods-content {
          padding: 0 1rem;
          margin-top: 1rem;
          .title {
            font-size: 1.4rem;
            line-height: 1.9rem;
            //   多行文本省略号
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            overflow: hidden;
          }
        }
        .current_price {
          margin-top: 0.5rem;
          color: #f92028;
          font-weight: 700;
          span {
            font-size: 1.5rem;
            em {
              font-size: 1.05rem;
            }
          }
        }
        .self {
          margin: 1rem 0;
          em {
            padding: 0 0.5rem;
            background-color: #f92028;
            color: #fff;
            height: 1.6rem;
            line-height: 1.6rem;
            border-radius: 0.3rem;
          }
        }
        .buy-info {
          display: flex;
          justify-content: space-between;
          span {
            color: #666;
          }
          .add_cart {
            color: #f92028;
          }
        }
      }
    }
  }
}
</style>